package zbum.issue.issue.service;

import java.util.List;
import zbum.issue.issue.service.IssueDefaultVO;
import zbum.issue.issue.service.IssueVO;

/**
 * @Class Name : IssueService.java
 * @Description : Issue Business class
 * @Modification Information
 *
 * @author zbum
 * @since 2010-07-21
 * @version 1.0
 * @see
 *  
 *  Copyright (C)  All right reserved.
 */
public interface IssueService {
	
	/**
	 * ISSUE을 등록한다.
	 * @param vo - 등록할 정보가 담긴 IssueVO
	 * @return 등록 결과
	 * @exception Exception
	 */
    String insertIssue(IssueVO vo) throws Exception;
    
    /**
	 * ISSUE을 수정한다.
	 * @param vo - 수정할 정보가 담긴 IssueVO
	 * @return void형
	 * @exception Exception
	 */
    void updateIssue(IssueVO vo) throws Exception;
    
    /**
	 * ISSUE을 삭제한다.
	 * @param vo - 삭제할 정보가 담긴 IssueVO
	 * @return void형 
	 * @exception Exception
	 */
    void deleteIssue(IssueVO vo) throws Exception;
    
    /**
	 * ISSUE을 조회한다.
	 * @param vo - 조회할 정보가 담긴 IssueVO
	 * @return 조회한 ISSUE
	 * @exception Exception
	 */
    IssueVO selectIssue(IssueVO vo) throws Exception;
    
    /**
	 * ISSUE 목록을 조회한다.
	 * @param searchVO - 조회할 정보가 담긴 VO
	 * @return ISSUE 목록
	 * @exception Exception
	 */
    List selectIssueList(SearchVO searchVO) throws Exception;
    
    /**
	 * ISSUE 총 갯수를 조회한다.
	 * @param searchVO - 조회할 정보가 담긴 VO
	 * @return ISSUE 총 갯수
	 * @exception
	 */
    int selectIssueListTotCnt(SearchVO searchVO);
    
}
